IUP (software)

The IUP Portable User Interface is a computer software development kit that provides a portable, scriptable toolkit for GUI building using C and Lua. This allows rapid, zero-compile prototyping and refinement of deployable GUI applications.

It provides this functionality by binding Lua with its C/C++ code, or simply writing C to the API. It supports calling native Windows graphics, native Motif/Lesstif or GTK+ elements, or the developers' own CanvasDraw elements from the Lua scripts or natively in a C/C++ application.

Features

IUP
Original author(s) Tecgraf/PUC-Rio in collaboration with Petrobras
Stable release 3.5 / 2011-04-26
Operating system Cross-platform
Type Software Development Kit
License MIT
Website IUP

IUP's distinguishing features include:

The Lua scripting is done by binding Lua and IUPLua in (at least) a small C program called a host application. This program creates a Lua state, passes the Lua state to IUPLua for initialization, and then opens and executes a Lua script against the Lua state. Alternatively, the entire IUP state can be dynamically loaded via use of a Lua 'require' or 'package.loadlib' of IUPLua.

The script(s) can later be compiled with the luac compiler if desired.

As of March 2009, only the GTK+ version of IUP supports Unicode. [1]

License/Copyright

IUP is liberally-licensed for free use, modification, sale, and redistribution under the MIT licence. [2]

IUP has been in development at least since the 1.8 version issued in 1998. It was begun in collaboration with Petrobras.

Project sites